import 'dotenv/config';
import http from 'http';
import fs from 'fs/promises';
import url from 'url';
import path from 'path';

//获取当前文件路径
const _filename = url.fileURLToPath(import.meta.url);
const _dirname = path.dirname(_filename);

console.log(_dirname,_filename);

const PORT = process.env.PORT;

const server = http.createServer(async(req, res) => {

    try {
        if(req.method === 'GET'){
            let filePath;
             if (req.url === '/') {
    // res.writeHead(200,{'Content-Type':'text/html'});
             filePath = path.join(_dirname,'public','index.html');

    // res.end('<h1>主页</h1>');
   } else if (req.url === '/about') {
        filePath = path.join(_dirname,'public','about.html');
    // res.writeHead(200,{'Content-Type':'text/html'});
    // res.end('<h1>关于</h1>');

   }else{
    
    res.writeHead(404,{'Content-Type':'text/html;charset=utf-8'});
    res.end('<h1>页面未找到</h1>');
    return;
   }

   const data = await fs.readFile(filePath);
   res.setHeader('Content-Type','text/html;charset=utf-8');
   res.writeHead(200);
   res.end(data);

   }else{
    res.writeHead(400, {'Content-Type':'text/html;charset=utf-8'});
    res.end('<h1>非法请求</h1>');
    
   }

   }catch(error){
    console.log(error);
    res.writeHead(500,{'Content-Type':'text/html;charset=utf-8'});
    res.end(`<h1>服务器错误</h1>`);
   }
   
    });

server.listen(PORT, () => {
    console.log(`服务器已启动，监听端口${PORT}`);

});